﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using FrbaBus;
using System.Data.SqlClient;

namespace FrbaBus.UserInterface
{
    using FrbaBus.DataRepository;

    public partial class Login : Form
    {
        ValidacionesGenericas validacionesGenericas;

        UsuarioRepository usuarioRepository;

        short loginFallidos = 0;

        public Login()
        {
            InitializeComponent();
            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
            usuarioRepository = new UsuarioRepository();
            validacionesGenericas = new ValidacionesGenericas();

        }

        private void entrarButton_Click(object sender, EventArgs e)
        {

            try
            {
                string usuario;// = "admin";

                string contrasenia;// = "w23e";

                usuario = usuarioTextBox.Text;

                contrasenia = contraseniaTextBox.Text;

                short lf = usuarioRepository.buscar(usuario, contrasenia);

                //MessageBox.Show(Convert.ToString(lf));

                if (lf == 0)
                {
                    new MenuPrincipal(1).Show();
                    this.Close();
                }
                else
                {
                    if (lf == -1)
                    {
                        MessageBox.Show("El usuario no existe");
                    }
                    else 
                    {
                        if (lf > 0 & lf < 4)
                        {
                            MessageBox.Show("La contraseña es incorrecta");
                        }
                        else
                        {
                            if (lf == 99)
                            {
                                MessageBox.Show("Usuario bloqueado");
                                Application.Exit();
                            }
                        }
                    }
                    
                }

            }
            catch (ValidacionNegocioException excepcionValidacion)
            {
                MessageBox.Show(excepcionValidacion.MensajeAlusuario);
            }
        }

        private void Login_Load(object sender, EventArgs e)
        {
        }

        private void cancelarButton_Click(object sender, EventArgs e)
        {
            new MenuPrincipal().Show();
            this.Close();
        }



    }
}
